package map;

import java.util.*;

public class MapDemo2 {
    public static void main(String[] args) {
        // 创建map
        Map<String,Integer> map = new HashMap<>();
        map.put("数学", 99);
        map.put("语文", 98);
        map.put("英语", 97);
        map.put("物理", 96);
        map.put("化学", 95);
        map.put("生物", 94);
        map.put("地理", 93);
        map.put("历史", 92);
        map.put("政治", 91);

        /*
        遍历所有的key
        keySet() 方法

         */
        Set<String> keySet =  map.keySet();
        for (String key : keySet) {
            System.out.println(key);
        }

        /*
         * 遍历所有的key和value
         * entrySet() 方法
         * 泛型 Map.Entry<K,V>，K是key的类型，V是value的类型
         */
        Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
        for (Map.Entry<String, Integer> entry : entrySet) {
            System.out.println(entry.getKey() + ":" + entry.getValue());
        }

        /*
         * 遍历所有的value
         * values() 方法
         */
        Collection<Integer> values = map.values();
        for (Integer value : values) {
            System.out.println(value);
        }

        values.forEach((value)->{
            System.out.println(value);
        });
        // 改写之后
        values.forEach((System.out::println));

        /*
        forEach() 方法
         */
        map.forEach((k,v)->
            System.out.println(k + ":" + v)
        );


    }
}
